package com.relytosoft.mizar.media.camera.api.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.relytosoft.dubhe.common.core.base.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import javax.validation.constraints.NotBlank;
import java.time.LocalDateTime;


@TableName("VID_CAMSTORE_SYS")
@ApiModel("CamstoreSys")
public class CamstoreSys extends BaseEntity {

    private static final long serialVersionUID = 1L;

    /**
     * 主键ID
     */
    @ApiModelProperty(value = "主键ID", required = true)
    @TableField("ID")
    @TableId(value = "ID", type = IdType.AUTO)
    @NotBlank(message = "主键ID不能为空")
    private Integer id;

    /**
     * 存储系统名称
     */
    @ApiModelProperty(value = "存储系统名称", required = true)
    @TableField("NAME")
    @NotBlank(message = "存储系统名称不能为空")
    private String name;

    /**
     * 传输协议
     */
    @ApiModelProperty(value = "传输协议", required = true)
    @TableField("TRANS_TYPE")
    @NotBlank(message = "传输协议不能为空")
    private Integer transType;

    /**
     * IP地址
     */
    @ApiModelProperty(value = "IP地址", required = true)
    @TableField("IP")
    @NotBlank(message = "IP地址不能为空")
    private String ip;

    /**
     * 端口
     */
    @ApiModelProperty(value = "端口", required = true)
    @TableField("PORT")
    @NotBlank(message = "端口不能为空")
    private Integer port;

    /**
     * 备注
     */
    @ApiModelProperty(value = "备注")
    @TableField("REMARK")
    private String remark;

    /**
     * 状态
     */
    @ApiModelProperty(value = "状态", required = true)
    @TableField("STATUS")
    @NotBlank(message = "状态不能为空")
    private Integer status;

    /**
     * 创建人ID
     */
    @ApiModelProperty(value = "创建人ID", required = true)
    @TableField("CREATED_ID")
    @NotBlank(message = "创建人ID不能为空")
    private Integer createdId;

    /**
     * 创建人
     */
    @ApiModelProperty(value = "创建人", required = true)
    @TableField("CREATED_BY")
    @NotBlank(message = "创建人不能为空")
    private String createdBy;

    /**
     * 创建时间
     */
    @ApiModelProperty(value = "创建时间", required = true)
    @TableField("CREATED_TIME")
    @NotBlank(message = "创建时间不能为空")
    private LocalDateTime createdTime;

    /**
     * 更新人ID
     */
    @ApiModelProperty(value = "更新人ID", required = true)
    @TableField("UPDATED_ID")
    @NotBlank(message = "更新人ID不能为空")
    private Integer updatedId;

    /**
     * 更新人
     */
    @ApiModelProperty(value = "更新人", required = true)
    @TableField("UPDATED_BY")
    @NotBlank(message = "更新人不能为空")
    private String updatedBy;

    /**
     * 更新时间
     */
    @ApiModelProperty(value = "更新时间", required = true)
    @TableField("UPDATED_TIME")
    @NotBlank(message = "更新时间不能为空")
    private LocalDateTime updatedTime;

    /**
     * 获得主键ID
     */
    public Integer getId() {
        return this.id;
    }

    /**
     * 设置主键ID
     */
    public void setId(Integer id) {
        this.id = id;
    }

    /**
     * 获得存储系统名称
     */
    public String getName() {
        return this.name;
    }

    /**
     * 设置存储系统名称
     */
    public void setName(String name) {
        this.name = name;
    }

    /**
     * 获得传输协议
     */
    public Integer getTransType() {
        return this.transType;
    }

    /**
     * 设置传输协议
     */
    public void setTransType(Integer transType) {
        this.transType = transType;
    }

    /**
     * 获得IP地址
     */
    public String getIp() {
        return this.ip;
    }

    /**
     * 设置IP地址
     */
    public void setIp(String ip) {
        this.ip = ip;
    }

    /**
     * 获得端口
     */
    public Integer getPort() {
        return this.port;
    }

    /**
     * 设置端口
     */
    public void setPort(Integer port) {
        this.port = port;
    }

    /**
     * 获得备注
     */
    public String getRemark() {
        return this.remark;
    }

    /**
     * 设置备注
     */
    public void setRemark(String remark) {
        this.remark = remark;
    }

    /**
     * 获得状态
     */
    public Integer getStatus() {
        return this.status;
    }

    /**
     * 设置状态
     */
    public void setStatus(Integer status) {
        this.status = status;
    }

    /**
     * 获得创建人ID
     *
     * @return
     */
    @Override
    public int getCreatedId() {
        return this.createdId;
    }

    /**
     * 设置创建人ID
     */
    public void setCreatedId(Integer createdId) {
        this.createdId = createdId;
    }

    /**
     * 获得创建人
     */
    @Override
    public String getCreatedBy() {
        return this.createdBy;
    }

    /**
     * 设置创建人
     */
    @Override
    public void setCreatedBy(String createdBy) {
        this.createdBy = createdBy;
    }

    /**
     * 获得创建时间
     */
    @Override
    public LocalDateTime getCreatedTime() {
        return this.createdTime;
    }

    /**
     * 设置创建时间
     */
    @Override
    public void setCreatedTime(LocalDateTime createdTime) {
        this.createdTime = createdTime;
    }

    /**
     * 获得更新人ID
     *
     * @return
     */
    @Override
    public int getUpdatedId() {
        return this.updatedId;
    }

    /**
     * 设置更新人ID
     */
    public void setUpdatedId(Integer updatedId) {
        this.updatedId = updatedId;
    }

    /**
     * 获得更新人
     */
    @Override
    public String getUpdatedBy() {
        return this.updatedBy;
    }

    /**
     * 设置更新人
     */
    @Override
    public void setUpdatedBy(String updatedBy) {
        this.updatedBy = updatedBy;
    }

    /**
     * 获得更新时间
     */
    @Override
    public LocalDateTime getUpdatedTime() {
        return this.updatedTime;
    }

    /**
     * 设置更新时间
     */
    @Override
    public void setUpdatedTime(LocalDateTime updatedTime) {
        this.updatedTime = updatedTime;
    }

    @Override
    public String toString() {
        return "CamstoreSys{id=" + id +
                ",name=" + name +
                ",transType=" + transType +
                ",ip=" + ip +
                ",port=" + port +
                ",remark=" + remark +
                ",status=" + status +
                ",createdId=" + createdId +
                ",createdBy=" + createdBy +
                ",createdTime=" + createdTime +
                ",updatedId=" + updatedId +
                ",updatedBy=" + updatedBy +
                ",updatedTime=" + updatedTime +
                "}";
    }
}
